/* ============================================
   onfz — responsive overrides
   ============================================ */

/* tablet and below */
@media (max-width: 900px) {
  .hero { padding: 6vh 24px 5vh; }
  .services { padding: 3vh 24px 8vh; }
}

/* phones */
@media (max-width: 600px) {
  .topbar { padding: 14px 18px; }
  .brand__logo { width: 56px; height: 24px; }
  .brand__name { font-size: 1rem; }

  .hero { padding: 5vh 18px 4vh; }
  .hero__logo { width: min(280px, 78vw); height: auto; }
  .hero__inner { gap: 18px; }

  .services { padding: 2vh 18px 8vh; }
  .services__grid { grid-template-columns: 1fr; }

  .btn { padding: 12px 18px; font-size: 0.92rem; }
}

/* respect motion preferences */
@media (prefers-reduced-motion: reduce) {
  .hero__logo,
  .status__dot { animation: none; }
  .btn:hover,
  .card:hover { transform: none; }
}
